// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import VueResource from 'vue-resource'

import VueRouter from 'vue-router'
import Routesjs from './routers'

// 全局配置axios
// import axios from 'axios'
// axios.defaults.baseURL = 'https://jsonplaceholder.typicode.com'
// axios.defaults.header.commom["Authorization"] = 'Taken'
// axios.defaults.header.post["Content-type"] = 'application/urlencode'
// axios.defaults.header.get["Accepts"] = 'application/json'


Vue.config.productionTip = false
Vue.use(VueResource)
Vue.use(VueRouter)


//      https://www.jianshu.com/p/62f25ed4fb08
// 自定全局义指令  使用Vue.directive() 来新建一个全局指令
//  第一个参数focus是指令名, 如下focus,
//  第二个参数是一个对象,对象内部有个 inserted() 的函数,函数有 el 这个参数. 
// el 这个参数表示了绑定这个指令的 DOM元素,在这里就是后面,el 就等价于 document.getElementById('el.id')....

// Vue.directive('rainbow', {
//   bind(el, binding, vnode) {
//     el.style.color = "#" + Math.random().toString(16).slice(2,8);
//   }
// });

Vue.directive('theme',{
  bind(el, binding, vnode){
    if (binding.value == 'wide'){
      el.style.maxWidth = "1260px"   
    }else if (binding.value == 'narrow'){
      el.style.maxWidth = '560px'
    }

    if(binding.arg == 'column'){
      el.style.background = '#6677cc'
      el.style.padding = '20px';
    }
  }
})

//  自定义全局过滤器
// Vue.filter("to-uppercase",function(value){
//   return value.toUpperCase();
// })

Vue.filter("snippet",function(value){
  return value.slice (0,100) + "......";
})



// 创建路由
const router = new VueRouter({
  routes:Routesjs,
  mode:"history"
})


/* eslint-disable no-new */
new Vue({
  el: '#app',
  components: { App },
  template: '<App/>',
  router:router
})
